package com.jmp.api.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Builder;
import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

/**
 * @author cjr
 */
@Data
@Builder
public class OrderDetailResponse {
    @ApiModelProperty("订单ID")
    private Integer orderId;
    @ApiModelProperty("订单状态描述")
    private String orderStatusInfo;
    @ApiModelProperty("订单状态: 1待支付 2待发货 3已发货 4已完成 5已取消 6退款申请 7退款完成")
    private Integer orderStatus;
    @ApiModelProperty("买家留言")
    private String orderRemark;
    @ApiModelProperty("订单号")
    private String orderNo;
    @ApiModelProperty("下单时间")
    private Long orderCreateTime;
    @ApiModelProperty("支付时间")
    private Long orderPayTime;
    @ApiModelProperty("物流配送")
    private String deliveryInfo;
    @ApiModelProperty("退款原因")
    private String refundRemark;

    @ApiModelProperty("收货地址：收货人")
    private String addressName;
    @ApiModelProperty("收货地址：收货人电话")
    private String addressPhone;
    @ApiModelProperty("收货地址：详细地址")
    private String addressDetail;

    @ApiModelProperty("店铺LOGO")
    private String companyLogo;
    @ApiModelProperty("店铺ID")
    private Integer companyId;
    @ApiModelProperty("店铺名称")
    private String companyName;
    @ApiModelProperty("电话")
    private String kfTel;
    @ApiModelProperty("聊天ChatID")
    private String kfChatId;

    @ApiModelProperty(value = "商品列表", dataType = "OrderDetailResponse.Goods")
    private List<Goods> goodsList;

    @ApiModel("OrderDetailResponse.Goods")
    @Data
    @Builder
    public static class Goods {
        @ApiModelProperty("商品ID")
        private Integer goodsId;
        @ApiModelProperty("商品名称")
        private String goodsName;
        @ApiModelProperty("商品图片")
        private String goodsPhoto;
        @ApiModelProperty("SKU名称")
        private String skuName;
        @ApiModelProperty("SKU数量")
        private Integer skuNum;
        @ApiModelProperty("商品总价")
        private BigDecimal price;
    }
}
